#coding=utf-8
import web
from basehandler import basehandler
from models.s_user import *
from config import global_lookup
from iLibP.loger import *
#注销页面
class Logout(basehandler):
    def get(self):
        self.set_header("Content-Type", "text/html; charset=UTF-8")
        try:
            userobj=self.get_currentuser()
            if userobj:
                LogOpt("[%s]%s请求注销,获授权;%s"%(userobj.username,userobj.truename,self.get_request_ip_region()))
                self.clear_login_cookies()
            else:
                LogOpt("已失效身份，申请注销，获授权")
        finally:
            self.write(ShowOkMsg("注销成功！","/"))
#登录页面
class List(basehandler):
    def get(self):
        """
        显示登陆页面
        @return:
        """
        self.set_header("Content-Type", "text/html; charset=UTF-8")
        t=global_lookup.get_template("T/sign.html")
        ip=self.get_request_ip()
        self.write(t.render(ip=ip))
    def post(self):
        """
        处理登陆请求
        @return:
        """
        self.set_header("Content-Type", "text/html; charset=UTF-8")
        i=self.input()
        i=InitStorageBlank(i,["act","usern","pwd"])
        if i.act and i.usern and i.pwd:
            if i.act=="login":
                userbll=bll_s_user()
                userobj=userbll.trylogin(i.usern,i.pwd)
                if userobj:
                    LogOpt("[%s]%s请求登录,获授权;%s"%(userobj.username,userobj.truename,self.get_request_ip_region()))
                    self.set_login_cookies(userobj)
                    self.redirect("/default")
                else:
                    LogOpt("请求使用[%s]账号使用[%s]密码登录系统,被拒绝;%s"%(i.usern,i.pwd,self.get_request_ip_region()))
                    self.write(ShowErrorAndGoBack("用户名密码错误"))
            else:
                LogOpt("外部程序请求登录系统,被拒绝;%s"%(self.get_request_ip_region()))